<?php
/**
 * Created by PhpStorm.
 * User: wumengmeng <wu_mengmeng@foxmail.com>
 * Date: 2019/4/26 0026
 * Time: 14:35
 */

namespace HiCommon\Service;

use HiCommon\MongodbModel\MongoLaravelLog;

class LogService extends BaseService
{

    /**
     * 记录laravel mongodb日志
     *
     * @param $arr_data
     *
     * @author wumengmeng <wu_mengmeng@foxmail.com>
     */
    public function wright_laravel_mongo_log($arr_data){
        MongoLaravelLog::create($arr_data);
    }

    /**
     * 支付日志
     *
     * @param string $s_pay_type 支付类型 wxmini-微信小程序支付 wxapp-微信app支付 aliapp-支付宝支付
     * @param string $s_msg
     * @param array  $content
     * @param string $level
     * @param array  $arr_option
     *
     * @author wumengmeng <wu_mengmeng@foxmail.com>
     */
    public function wright_pay_log($s_pay_type = '',$s_msg = '', $content = [],$level = 'info',$arr_option = [])
    {
        $arr_data = [
          'driver'=>'yansongda.pay',
          'file'=>'yansongda_pay/'.$s_pay_type.'/pay',
          'level'=>$level,
          'msg'=>$s_msg,
          'content'=>$content,
        ];
        return self::wright_laravel_mongo_log($arr_data);
    }

    /**
     * 微信支付日志
     *
     * @param string $s_msg
     * @param string $content
     * @param string $level
     * @param array  $arr_option
     *
     * @return bool|int
     * @author wumengmeng <wu_mengmeng@foxmail.com>
     */
    public function wright_log_for_wechat_pay($s_msg = '', $content = [],$level = 'info',$arr_option = [])
    {
        $arr_data = [
          'driver'=>'yansongda.pay',
          'file'=>'yansongda_pay/wechat/pay',
          'level'=>$level,
          'msg'=>$s_msg,
          'content'=>$content,
        ];
        return self::wright_laravel_mongo_log($arr_data);
    }

    /**
     * 微信支付结果通知确认日志
     *
     * @param string $s_msg
     * @param string $content
     * @param string $level
     * @param array  $arr_option
     *
     * @return bool|int
     * @author wumengmeng <wu_mengmeng@foxmail.com>
     */
    public function wright_log_for_wechat_pay_confirm($s_msg = '', $content = [],$level = 'info',$arr_option = [])
    {
        $arr_data = [
          'driver'=>'yansongda.pay',
          'file'=>'yansongda_pay/wechat/pay_confirm',
          'level'=>$level,
          'msg'=>$s_msg,
          'content'=>$content,
        ];
        return self::wright_laravel_mongo_log($arr_data);
    }

    /**
     * 微信退款日志
     *
     * @param string $s_msg
     * @param string $content
     * @param string $level
     * @param array  $arr_option
     *
     * @return bool|int
     * @author wumengmeng <wu_mengmeng@foxmail.com>
     */
    public function wright_log_for_wechat_refund($s_msg = '', $content = [],$level = 'info',$arr_option = [])
    {
        $arr_data = [
          'driver'=>'yansongda.pay',
          'file'=>'yansongda_pay/wechat/refund',
          'level'=>$level,
          'msg'=>$s_msg,
          'content'=>$content,
        ];
        return self::wright_laravel_mongo_log($arr_data);
    }

    /**
     * 微信错误日志
     *
     * @param string $s_msg
     * @param string $content
     * @param string $level
     * @param array  $arr_option
     *
     * @return bool|int
     * @author wumengmeng <wu_mengmeng@foxmail.com>
     */
    public function wright_log_for_wechat_error($s_msg = '', $content = [],$level = 'error',$arr_option = [])
    {
        $arr_data = [
          'driver'=>'yansongda.pay',
          'file'=>'yansongda_pay/wechat/error',
          'level'=>$level,
          'msg'=>$s_msg,
          'content'=>$content,
        ];
        return self::wright_laravel_mongo_log($arr_data);

    }



    /**
     * 用户邀请日志
     *
     * @param string $s_msg
     * @param string $content
     * @param string $level
     * @param array  $arr_option
     *
     * @return bool|int
     * @author wumengmeng <wu_mengmeng@foxmail.com>
     */
    public function wright_log_for_user($s_msg = '', $content = [],$level = 'info',$arr_option = [])
    {
        $arr_data = [
          'driver'=>'user',
          'file'=>'user',
          'level'=>$level,
          'msg'=>$s_msg,
          'content'=>$content,
        ];
        return self::wright_laravel_mongo_log($arr_data);
    }

    /**
     * 自动任务日志
     *
     * @param string $s_msg
     * @param string $level
     * @param array  $arr_option
     *
     * @return bool|int
     * @author wumengmeng <wu_mengmeng@foxmail.com>
     */
    public function wright_log_for_auto_schedule($s_msg = '', $content = [],$level = 'info',$arr_option = [])
    {
        $arr_data = [
          'driver'=>'auto_schedule',
          'file'=>'auto_schedule',
          'level'=>$level,
          'msg'=>$s_msg,
          'content'=>$content,
        ];
        return self::wright_laravel_mongo_log($arr_data);

    }

//    /**
//     * 微信支付日志
//     *
//     * @param string $s_msg
//     * @param string $content
//     * @param string $level
//     * @param array  $arr_option
//     *
//     * @return bool|int
//     * @author wumengmeng <wu_mengmeng@foxmail.com>
//     */
//    public function wright_log_for_wechat_pay($s_msg = '', $content = '',$level = 'info',$arr_option = [])
//    {
//        $arr_config = [
//          'file' => 'log/yansongda_pay/wechat/pay/wechat.log',
//          'driver' => 'yansongda.pay',
//        ];
//        $arr_config = array_replace_recursive($arr_config,$arr_option);
//        $obj_log = new \HiCommon\Vendor\Log($arr_config);
//        $result = $obj_log->set_level($level)->create_log($s_msg,$content);
//        return $result;
//    }
//
//
//    /**
//     * 微信支付结果通知确认日志
//     *
//     * @param string $s_msg
//     * @param string $content
//     * @param string $level
//     * @param array  $arr_option
//     *
//     * @return bool|int
//     * @author wumengmeng <wu_mengmeng@foxmail.com>
//     */
//    public function wright_log_for_wechat_pay_confirm($s_msg = '', $content = '',$level = 'info',$arr_option = [])
//    {
//
//        $arr_config = [
//          'file' => 'log/yansongda_pay/wechat/pay_confirm/wechat.log',
//          'driver' => 'yansongda.pay',
//        ];
//        $arr_config = array_replace_recursive($arr_config,$arr_option);
//        $obj_log = new \HiCommon\Vendor\Log($arr_config);
//        $result = $obj_log->set_level($level)->create_log($s_msg,$content);
//        return $result;
//    }
//
//    /**
//     * 微信退款日志
//     *
//     * @param string $s_msg
//     * @param string $content
//     * @param string $level
//     * @param array  $arr_option
//     *
//     * @return bool|int
//     * @author wumengmeng <wu_mengmeng@foxmail.com>
//     */
//    public function wright_log_for_wechat_refund($s_msg = '', $content = '',$level = 'info',$arr_option = [])
//    {
//
//        $arr_config = [
//          'file' => 'log/yansongda_pay/wechat/refund/wechat.log',
//          'driver' => 'yansongda.pay',
//        ];
//        $arr_config = array_replace_recursive($arr_config,$arr_option);
//        $obj_log = new \HiCommon\Vendor\Log($arr_config);
//        $result = $obj_log->set_level($level)->create_log($s_msg,$content);
//        return $result;
//    }
//
//    /**
//     * 微信错误日志
//     *
//     * @param string $s_msg
//     * @param string $content
//     * @param string $level
//     * @param array  $arr_option
//     *
//     * @return bool|int
//     * @author wumengmeng <wu_mengmeng@foxmail.com>
//     */
//    public function wright_log_for_wechat_error($s_msg = '', $content = '',$level = 'error',$arr_option = [])
//    {
//
//        $arr_config = [
//          'file' => 'log/yansongda_pay/wechat/error/wechat.log',
//          'driver' => 'yansongda.pay',
//        ];
//        $arr_config = array_replace_recursive($arr_config,$arr_option);
//
//
//        $obj_log = new \HiCommon\Vendor\Log($arr_config);
//        $result = $obj_log->set_level($level)->create_log($s_msg,$content);
//        return $result;
//    }
//
//
//
//    /**
//     * 用户邀请日志
//     *
//     * @param string $s_msg
//     * @param string $content
//     * @param string $level
//     * @param array  $arr_option
//     *
//     * @return bool|int
//     * @author wumengmeng <wu_mengmeng@foxmail.com>
//     */
//    public function wright_log_for_user($s_msg = '', $content = '',$level = 'info',$arr_option = [])
//    {
//
//        $arr_config = [
//          'file' => 'log/user/wechat.log',
//          'driver' => 'user',
//        ];
//        $arr_config = array_replace_recursive($arr_config,$arr_option);
//        $obj_log = new \HiCommon\Vendor\Log($arr_config);
//        $result = $obj_log->set_level($level)->create_log($s_msg,$content);
//        return $result;
//    }
//
//    /**
//     * 自动任务日志
//     *
//     * @param string $s_msg
//     * @param string $level
//     * @param array  $arr_option
//     *
//     * @return bool|int
//     * @author wumengmeng <wu_mengmeng@foxmail.com>
//     */
//    public function wright_log_for_auto_schedule($s_msg = '', $content = '',$level = 'info',$arr_option = [])
//    {
//        $arr_config = [
//          'file' => 'log/auto_schedule/wechat.log',
//          'driver' => 'auto_schedule',
//        ];
//        $arr_config = array_replace_recursive($arr_config,$arr_option);
//        $obj_log = new \HiCommon\Vendor\Log($arr_config);
//        if(!is_string($content)){
//            $content = json_encode($content);
//        }
//        $result = $obj_log->set_level($level)->create_log($s_msg,$content);
//        return $result;
//    }

















//    /**
//     * 写日志
//     *
//     * @param        $s_msg
//     * @param        $arr_content
//     * @param string $s_level
//     *
//     * @author wumengmeng <wu_mengmeng@foxmail.com>
//     */
//    public function wright_log_for_auto_schedule($s_msg,$arr_content = [],$s_level = 'info'){
//        Log::useDailyFiles(LARAVEL_STORAGE.'/log/auto_schedule/wechat.log',180);
//        Log::$s_level($s_msg, $arr_content);
//    }

}